Scroll to navigation

EVS_JOIN(3) Corosync Cluster Engine Programmer's Manual EVS_JOIN(3)

NAME

evs_join - Joins one or more groups in the EVS library

SYNOPSIS

#include <corosync/evs.h>

int evs_join(evs_handle_t handle, evs_group_t *groups, int group_entries);

DESCRIPTION

The evs_join function is used to join one or more groups. When a group is joined, using the evs_mcast_joined(3) function will multicast to the groups joined in the argument handle. Messages that are sent to any of the groups joined to the parameter handle will be delivered by evs_dispatch(3).

This call may be used more then once on a handle, in which case the joined groups will be all of the groups passed to the evs_join(3) function during the lifecycle of the parameter handle.

The argument groups is used to specify the groups to join. A group is a 32 byte key. The key is not a string, hence, the entire key is used when joining the channel. For that reason the entire group should be initialized.

The argument group_entries specifies how many entries are located in the groups argument.

The groups argument is of the type evs_group_t which is defined by the structure:

typedef struct {

char key[32]; } evs_groups_t;

RETURN VALUE

This call returns the EVS_OK value if successful, otherwise an error is returned.

ERRORS

The errors are undocumented.

SEE ALSO

evs_overview(8), evs_initialize(3), evs_finalize(3), evs_fd_get(3), evs_dispatch(3), evs_leave(3), evs_mcast_joined(3), evs_mcast_groups(3), evs_membership_get(3) evs_context_get(3) evs_context_set(3)

2004-08-31 corosync Man Page